In coding theory, Reed-Solomon (RS) codes are non-binary cyclic error-correcting codes invented by Irving S. Reed and Gustave Solomon. They described a systematic way of building codes that could detect and correct multiple random symbol errors. By adding T check symbols to the data, an RS code can detect any combination of up to T erroneous symbols, and correct up to [T/2] symbols. As an erasure code, it can correct up to T known erasures, or it can detect and correct combinations of errors and erasures. Furthermore, RS codes are suitable as multiple-burst bit-error correcting codes, since a sequence of b+1 consecutive bit errors can affect at most two symbols of size b. The choice of T is generally up to the designer of the code, and may be selected within wide limits.